home *** CD-ROM | disk | FTP | other *** search
- # Source Generated with Decompyle++
- # File: in.pyc (Python 2.4)
-
- import sys
- import os
- import unittest
- from test import test_support
- if not os.path.supports_unicode_filenames:
- raise test_support.TestSkipped, 'test works only on NT+'
-
- filenames = [
- 'abc',
- u'ascii',
- u'Grüß-Gott',
- u'Γειά-σας',
- u'Здравствуйте',
- u'にぽん',
- u'השקצץס',
- u'曨曩曫',
- u'曨שんдΓß']
-
- def deltree(dirname):
- if os.path.exists(dirname):
- for fname in os.listdir(unicode(dirname)):
- os.unlink(os.path.join(dirname, fname))
-
- os.rmdir(dirname)
-
-
-
- class UnicodeFileTests(unittest.TestCase):
- files = [ os.path.join(test_support.TESTFN, f) for f in filenames ]
-
- def setUp(self):
-
- try:
- os.mkdir(test_support.TESTFN)
- except OSError:
- pass
-
- for name in self.files:
- f = open(name, 'w')
- f.write((name + '\n').encode('utf-8'))
- f.close()
- os.stat(name)
-
-
-
- def tearDown(self):
- deltree(test_support.TESTFN)
-
-
- def _apply_failure(self, fn, filename, expected_exception, check_fn_in_exception = True):
-
- try:
- fn(filename)
- raise test_support.TestFailed("Expected to fail calling '%s(%r)'" % (fn.__name__, filename))
- except expected_exception:
- details = None
- if check_fn_in_exception and details.filename != filename:
- raise test_support.TestFailed("Function '%s(%r) failed with bad filename in the exception: %r" % (fn.__name__, filename, details.filename))
-
- except:
- details.filename != filename
-
-
-
- def test_failures(self):
- for name in self.files:
- name = 'not_' + name
- self._apply_failure(open, name, IOError)
- self._apply_failure(os.stat, name, OSError)
- self._apply_failure(os.chdir, name, OSError)
- self._apply_failure(os.rmdir, name, OSError)
- self._apply_failure(os.remove, name, OSError)
- self._apply_failure(os.listdir, name, OSError, False)
-
-
-
- def test_open(self):
- for name in self.files:
- f = open(name, 'w')
- f.write((name + '\n').encode('utf-8'))
- f.close()
- os.stat(name)
-
-
-
- def test_listdir(self):
- f1 = os.listdir(test_support.TESTFN)
- f2 = os.listdir(unicode(test_support.TESTFN, sys.getfilesystemencoding()))
- f2.sort()
- print f2
-
-
- def test_rename(self):
- for name in self.files:
- os.rename(name, 'tmp')
- os.rename('tmp', name)
-
-
-
- def test_directory(self):
- dirname = os.path.join(test_support.TESTFN, u'Grüß-曨曩曫')
- filename = u'ß-曨曩曫'
- oldwd = os.getcwd()
- os.mkdir(dirname)
- os.chdir(dirname)
- f = open(filename, 'w')
- f.write((filename + '\n').encode('utf-8'))
- f.close()
- print repr(filename)
- os.access(filename, os.R_OK)
- os.remove(filename)
- os.chdir(oldwd)
- os.rmdir(dirname)
-
-
-
- def test_main():
-
- try:
- test_support.run_unittest(UnicodeFileTests)
- finally:
- deltree(test_support.TESTFN)
-
-
- if __name__ == '__main__':
- test_main()
-
-